package io.kiki.sba.registry.common.model.console;

import lombok.Getter;
import lombok.Setter;

import java.util.Set;

@Setter
@Getter
public class MultiSegmentSyncSwitch {

    /**
     * multi sync switch
     */
    private final boolean multiSync;

    /**
     * multi sync switch
     */
    private final boolean multiPush;

    /**
     * remote dataCenter
     */
    private final String remoteDataCenter;

    /**
     * allow sync multi group
     */
    private final Set<String> synPublisherGroups;

    /**
     * allow sync multi dataInfoId
     */
    private final Set<String> syncDataInfoIds;

    /**
     * dataInfoId will not multi sync, this priority is higher than syncGroups and syncDataInfoIds
     */
    private final Set<String> ignoreDataInfoIds;

    private final long dataVersion;

    public MultiSegmentSyncSwitch(boolean multiSync, boolean multiPush, String remoteDataCenter, Set<String> synPublisherGroups, Set<String> syncDataInfoIds, Set<String> ignoreDataInfoIds, long dataVersion) {
        this.multiSync = multiSync;
        this.multiPush = multiPush;
        this.remoteDataCenter = remoteDataCenter;
        this.synPublisherGroups = synPublisherGroups;
        this.syncDataInfoIds = syncDataInfoIds;
        this.ignoreDataInfoIds = ignoreDataInfoIds;
        this.dataVersion = dataVersion;
    }


}
